package pe.com.drokasa.mirror.datagram.helper;

import org.apache.commons.lang.StringUtils;

import pe.com.drokasa.mirror.datagram.request.Transaction017Request;
import pe.com.drokasa.mirror.datagram.response.Transaction017Response;

/**
 * Clase utilitaria encargada de parsear las tramas enviadas / recibidas hacia
 * el sistema MIRROR.
 * 
 * @author Synopsis S.A
 *
 */
public class DatagramHelper 
{	
	/**
	 * M&eacute;todo que obtiene el request con los datos necesarios
	 * para la ejecuci&oacute;n de la transacci&oacute;n 017 - Consulta Stock por sucursal.
	 * 
	 * @param codigoAplicacion
	 * @param codigoTransaccion
	 * @param codigoTipoDispositivo
	 * @param usuario
	 * @param password
	 * @param codigoVendedor
	 * @param codigoProducto
	 * @return
	 */
	public static Transaction017Request getTransaction017Request(String codigoAplicacion, String codigoTransaccion, String codigoTipoDispositivo, 
			String usuario, String password, String codigoVendedor, String codigoProducto)
	{
		Transaction017Request request = new Transaction017Request();
		request.setCodigoAplicacion(codigoAplicacion);
		request.setCodigoTransaccion(codigoTransaccion);
		request.setCodigoTipoDispositivo(codigoTipoDispositivo);
		request.setUsuario(usuario);
		request.setPassword(password);
		request.setCodigoVendedor(codigoVendedor);
		request.setCodigoProducto(codigoProducto);
		return request;
	}
	
	/**
	 * @param res
	 * @return
	 */
	public static Transaction017Response getTransaction017Response(String res)
	{
		if(StringUtils.isBlank(res))
		{
			throw new RuntimeException("La trama de respuesta no es valida");
		}

		return new Transaction017Response(res);
	}
}